what2Do.beallitas = {
	
	beallitas : null,		//beállítáa div
	ajaxloader : null,
	reszletek : null,
	cimkek : null,		//cimke infók
	
	init : function(){
		what2Do.beallitas.beallitas = $('beallitas');
		what2Do.beallitas.ajaxloader = $('beallitasAjaxloader');
		what2Do.beallitas.reszletek = $('beallitasReszletek');
		
		Event.observe($('beallitas'), 'click', what2Do.beallitas.clickKezelo);
	},//what2Do.beallitas.init
	
	ablak : function(e){
		//todo: ha rendelkezésünkre áll az objektum akkor ne kérjük már le megint a szerverről
		new Ajax.Request(
			e.target.pathname + '.json',
			{
				method : 'post',
				onCreate : function(){
					what2Do.panel.panel.hide();
					what2Do.beallitas.beallitas.show();
					what2Do.beallitas.ajaxloader.show();
				},
				onComplete : function(valasz){
					if(valasz.responseJSON){
						//JSONban jön a cimkék listája
						var cimkek = what2Do.beallitas.cimkek = valasz.responseJSON;
						var tagCloud = Builder.node('div', {id : 'tagcloud'});
						cimkek.each(function(cimke, index){
							var l = cimke.Task.length;
							if(l){
								var ujLink = Builder.node('a', {
													href : './tags/e/' + index,
													id : 'cimke' + cimke.Tag.id,
													className : 'taglink',
													style : 'font-size:' + ((l<10)?(1+l/5):(3)) + 'em;',
													title : what2Do.texts.TITLE_EDIT
													},
												cimke.Tag.tag + ' (' + l + ')'
												);
								tagCloud.appendChild(ujLink);
							}
						});
						what2Do.beallitas.reszletek.update(Builder.node('h3', 'Címkék'));
						what2Do.beallitas.reszletek.appendChild(tagCloud);
						what2Do.beallitas.ajaxloader.hide();
					}
					else
						what2Do.uzenetKezelo('Nem tudtam lekérni a cimkéket');
				}
			}
			);
	},//what2Do.beallitas.ablak
	
	clickKezelo : function(e){
		if(e.target.nodeName == 'H3'){
			//cimke szerkesztés
			new Ajax.InPlaceEditor(e.target, './tags/edit/' + e.target.id + '.json', {clickToEditText : 'Katt ide a változtatáshoz'});
		}
	},//what2Do.beallitas.clickKezelo
	
	cimkeKezelo : function(e){
		//cimkék kezelése
		what2Do.beallitas.reszletek.update();
		var id = e.target.pathname.match(/e\/(\d*)/)[1];		//pl tags/e/4
		what2Do.beallitas.reszletek.appendChild(Builder.node('h3', {id: e.target.id.replace(/cimke/, '')}, e.target.textContent));
		var cimke = what2Do.beallitas.cimkek[id];
		var azUl = Builder.node('ul');
		cimke.Task.each(function(task){
			var ujLi = Builder.node('li',
											Builder.node('a', {
																	href : './tasks/edit/' + task.id
																	},
																task.task + ' (' + task.due + ')'));
			azUl.appendChild(ujLi);
		});
		what2Do.beallitas.reszletek.appendChild(azUl);
	}//what2Do.beallitas.cimkeKezelo
	
}//what2Do.beallitas

document.observe('dom:loaded',what2Do.beallitas.init);
